package com.itheima.hw;

import com.itheima.hw.test3.Car;

import java.io.Serializable;


public class Result<T> implements Serializable {

    private Integer code; 
    private String msg;
    private T data;

    /**
     * 创建一个表示成功结果的Result对象
     * <p>
     * 该方法用于生成一个泛型Result对象，表示操作成功该方法主要用于简化成功结果的创建，
     * 使得调用者可以快速获得一个表示成功的Result对象，而无需手动设置状态码和消息
     *
     * @param <T> 泛型参数，表示Result对象中数据的类型
     * @return 返回一个表示操作成功的Result对象，其中状态码设置为1
     */
    public static <T> Result<T> success() {
        Result<T> result = new Result<T>();
        result.code = 1;
        return result;
    }


    public static <T> Result<T> success(T object) {
        Result<T> result = new Result<T>();
        result.data = object;
        result.code = 1;
        return result;
    }

    public static <T> Result<T> error(String msg) {
        Result result = new Result();
        result.msg = msg;
        result.code = 0;
        return result;
    }


}

